During the execution of most software applications, whether during use of the software by an end user, or during development and testing by a software engineer or similar user, the application may generate output not directly representative of the primary functionality of the application. Examples of such output may include, but are not limited to, error information, logging information, and trace information. Error information may inform the user of any condition that is exceptional in nature or that may cause the application to perform in an incorrect or unexpected manner. Logging information may inform a user of expected and/or unexpected events that have occurred during the execution of the application, such as an error event, the creation of a file, a change of a state reflected in the application, the initiation or termination of a process, and the like. Trace information, normally provided for the benefit of a software developer, typically indicates which portions of the application have been executed, when such portions were executed, and so on.
At least some of this generated output is in the form of text that provides the information being generated by the application. Such output may be provided in a number of forms to the user, such as by way of presenting the text on a display to the user in real-time during execution of the application, or via storing the text in an electronic file during execution for subsequent viewing. Also, the text is typically specified in parallel with application development so that the text will be available at the time of deployment of the application.